package com.gzist.elderlyserviceplatform.entity.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.gzist.elderlyserviceplatform.common.base.BaseDO;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

/**
 * 服务预约表
 */
@Data
@Builder
@TableName("service_reservation")
@Schema(description = "服务预约表")
public class ServiceReservation extends BaseDO {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @Schema(description = "服务 ID，关联 elderly_service 表的 id")
    private String serviceId;

    @Schema(description = "预约人 ID，关联 user 表的 id")
    private String userId;

    @Schema(description = "预约人名称")
    private String userName;

    @Schema(description = "预约时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime reservationTime;

    @Schema(description = "审核状态")
    private String reviewStatus;

    @Schema(description = "审核意见")
    private String reviewOpinion;

    @Schema(description = "紧急联系人电话")
    private String emergencyContactPhone;

    @Schema(description = "服务地址")
    private String serviceAddress;

}
